login  Naam:   Wachtwoord: 
Registreer je!
 Scripts:

Scripts > PHP > Handige scripts > [PHP] multi -> one dimension array

[PHP] multi -> one dimension array

Auteur: Stijn - 28 oktober 2006 - 15:27 - Gekeurd door: Wijnand - Hits: 3343 - Aantal punten: 4.00 (1 stem)




Uitleg:
----------
Stel je hebt een 4D array en je wilt deze naar een 1D array brengen [ $ar = array( array( array( array( 'val' ) ) ) ) ] ==> [ $ar = array('val') ]
Dan is deze functie zeer handig 


Voorbeeld:
-------------
Voorbeeld staat onderaan.


Note voor de $keys parameter:
---------------------------------

Let op dat je geen array hebt met 2 dezelfde keys , dus kijk goed in je subarray's etc (index nummer van je array mogen al niet dezelfde zijn).
array( 'stijn' , array( array( 'booster' , 'eos-booster' ) , 'ibrahim' ) , 'pieterc' )
als je bij die array $keys op true zet gaat hij dus deze overschrijven
0 => stijn
0 => booster
----
dus op de 0 index van je nieuwe array ga je booster krijgen

Code:
  1. <?php
  2. /* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
  3. /**
  4. * a function that makes a nD array into a 1D array
  5. *
  6. * @license http://www.gnu.org/licenses/gpl.html
  7. * @author Stijn Leenknegt <stijnleenknegt@gmail.com>
  8. * @version Versie 1.0
  9. * @package PHP
  10. */
  11.  
  12. // full error reporting
  13. error_reporting( E_ALL );
  14.  
  15.  
  16. /**
  17.  * the function
  18.  *
  19.  * @param array $array
  20.  * @param boolean $keys
  21.  * @param array $return
  22.  * @return array
  23.  */
  24. function multi_2_one_array( $array , $keys = false , $return = array() )
  25. {
  26.  
  27. foreach( $array as $key => $value ) {
  28.  
  29. if( is_array( $value ) === true ) {
  30.  
  31. multi_2_one_array( $value , $keys , &$return );
  32.  
  33. } else {
  34.  
  35. if( $keys === true ) {
  36. $return[ $key ] = $value;
  37. } else {
  38. $return[ ] = $value;
  39. }
  40.  
  41. }
  42.  
  43. }
  44.  
  45. return $return;
  46.  
  47. }
  48. ?>
Download code! Download code (.txt)

 Bekijk een voorbeeld van dit script!
 Stemmen
Niet ingelogd.

 Reacties
Post een reactie
Lees de reacties (2)
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.024s